//home模块小仓库
import {reqCategoryList,getBannerList,getFloorList} from '@/api/index'
const state = {
  //服务器返回的数据是数组，定义初始值空数组
  categoryList: [],
  bannerlist: [],
  floorlist:[]
}
const mutations = {
  //定义方法，接收actions中的数据，
  //第一个参数为 state，操作上层state中的数据
  //第二个参数 接收actions传送过来的数据
  CATEGORYLIST(state,categoryList) {
    state.categoryList = categoryList
  },
  GETBANNERLIST(state, bannerlist) {
    state.bannerlist = bannerlist
  },
  GETFLOORLIST(state, floorlist) {
    state.floorlist = floorlist
  }
}
const actions = {
  //使用await与async可以直接拿到请求中的数据不用处理promise
  async categoryList({commit}) {
    let result = await reqCategoryList()
    console.log(result)
    //code为200表示请求成功
    if (result.code === 200) {
      //调用mutations中的方法处理数据
      //第一个参数mutations中的方法名，第二个参数要传送的数据
      let arrdata = result.data
      arrdata = arrdata.slice(0,15)
      commit('CATEGORYLIST',arrdata)
    }
  },
  async getbannerlist({commit}) {
    let result =  await getBannerList()
    commit('GETBANNERLIST',result.data)
  },
  async getfloorList({ commit }){
   let result =  await getFloorList()
    if (result.code === 200) {
      commit('GETFLOORLIST',result.data)
    }
  }
}
const getters = {}
export default {
  state,
  mutations,
  actions,
  getters,
}
